package com.servicesManagement.model;
// Generated Dec 13, 2014 11:53:18 AM by Hibernate Tools 3.2.1.GA


import java.math.BigDecimal;
import java.util.Date;
import java.util.HashSet;
import java.util.Set;
import javax.persistence.CascadeType;
import javax.persistence.Column;
import javax.persistence.Entity;
import javax.persistence.FetchType;
import javax.persistence.Id;
import javax.persistence.JoinColumn;
import javax.persistence.ManyToOne;
import javax.persistence.OneToMany;
import javax.persistence.Table;
import javax.persistence.Temporal;
import javax.persistence.TemporalType;

/**
 * ServiceParticipation generated by hbm2java
 */
@Entity
@Table(name="SERVICE_PARTICIPATION"
    ,schema="SANKAR"
)
public class ServiceParticipation  implements java.io.Serializable {


     private BigDecimal serviceParticipationId;
     private Service service;
     private BigDecimal changedByUserId;
     private Date changedDate;
     private BigDecimal createdByUserId;
     private Date createdDate;
     private Date effectiveDate;
     private Date expirationDate;
     private BigDecimal pscuClientEntityId;
     private Set serviceParticipationAttributs = new HashSet(0);
     private Set spParticipationExceptions = new HashSet(0);
     private Set spaParticipationExceptions = new HashSet(0);

    public ServiceParticipation() {
    }

	
    public ServiceParticipation(BigDecimal serviceParticipationId) {
        this.serviceParticipationId = serviceParticipationId;
    }
    public ServiceParticipation(BigDecimal serviceParticipationId, Service service, BigDecimal changedByUserId, Date changedDate, BigDecimal createdByUserId, Date createdDate, Date effectiveDate, Date expirationDate, BigDecimal pscuClientEntityId, Set serviceParticipationAttributs, Set spParticipationExceptions, Set spaParticipationExceptions) {
       this.serviceParticipationId = serviceParticipationId;
       this.service = service;
       this.changedByUserId = changedByUserId;
       this.changedDate = changedDate;
       this.createdByUserId = createdByUserId;
       this.createdDate = createdDate;
       this.effectiveDate = effectiveDate;
       this.expirationDate = expirationDate;
       this.pscuClientEntityId = pscuClientEntityId;
       this.serviceParticipationAttributs = serviceParticipationAttributs;
       this.spParticipationExceptions = spParticipationExceptions;
       this.spaParticipationExceptions = spaParticipationExceptions;
    }
   
     @Id 
    
    @Column(name="SERVICE_PARTICIPATION_ID", unique=true, nullable=false, scale=0)
    public BigDecimal getServiceParticipationId() {
        return this.serviceParticipationId;
    }
    
    public void setServiceParticipationId(BigDecimal serviceParticipationId) {
        this.serviceParticipationId = serviceParticipationId;
    }
@ManyToOne(fetch=FetchType.LAZY)
    @JoinColumn(name="SERVICE_ID")
    public Service getService() {
        return this.service;
    }
    
    public void setService(Service service) {
        this.service = service;
    }
    
    @Column(name="CHANGED_BY_USER_ID")
    public BigDecimal getChangedByUserId() {
        return this.changedByUserId;
    }
    
    public void setChangedByUserId(BigDecimal changedByUserId) {
        this.changedByUserId = changedByUserId;
    }
    @Temporal(TemporalType.DATE)
    @Column(name="CHANGED_DATE", length=7)
    public Date getChangedDate() {
        return this.changedDate;
    }
    
    public void setChangedDate(Date changedDate) {
        this.changedDate = changedDate;
    }
    
    @Column(name="CREATED_BY_USER_ID")
    public BigDecimal getCreatedByUserId() {
        return this.createdByUserId;
    }
    
    public void setCreatedByUserId(BigDecimal createdByUserId) {
        this.createdByUserId = createdByUserId;
    }
    @Temporal(TemporalType.DATE)
    @Column(name="CREATED_DATE", length=7)
    public Date getCreatedDate() {
        return this.createdDate;
    }
    
    public void setCreatedDate(Date createdDate) {
        this.createdDate = createdDate;
    }
    @Temporal(TemporalType.DATE)
    @Column(name="EFFECTIVE_DATE", length=7)
    public Date getEffectiveDate() {
        return this.effectiveDate;
    }
    
    public void setEffectiveDate(Date effectiveDate) {
        this.effectiveDate = effectiveDate;
    }
    @Temporal(TemporalType.DATE)
    @Column(name="EXPIRATION_DATE", length=7)
    public Date getExpirationDate() {
        return this.expirationDate;
    }
    
    public void setExpirationDate(Date expirationDate) {
        this.expirationDate = expirationDate;
    }
    
    @Column(name="PSCU_CLIENT_ENTITY_ID")
    public BigDecimal getPscuClientEntityId() {
        return this.pscuClientEntityId;
    }
    
    public void setPscuClientEntityId(BigDecimal pscuClientEntityId) {
        this.pscuClientEntityId = pscuClientEntityId;
    }
@OneToMany(cascade=CascadeType.ALL, fetch=FetchType.LAZY, mappedBy="serviceParticipation")
    public Set getServiceParticipationAttributs() {
        return this.serviceParticipationAttributs;
    }
    
    public void setServiceParticipationAttributs(Set serviceParticipationAttributs) {
        this.serviceParticipationAttributs = serviceParticipationAttributs;
    }
@OneToMany(cascade=CascadeType.ALL, fetch=FetchType.LAZY, mappedBy="serviceParticipation")
    public Set getSpParticipationExceptions() {
        return this.spParticipationExceptions;
    }
    
    public void setSpParticipationExceptions(Set spParticipationExceptions) {
        this.spParticipationExceptions = spParticipationExceptions;
    }
@OneToMany(cascade=CascadeType.ALL, fetch=FetchType.LAZY, mappedBy="serviceParticipation")
    public Set getSpaParticipationExceptions() {
        return this.spaParticipationExceptions;
    }
    
    public void setSpaParticipationExceptions(Set spaParticipationExceptions) {
        this.spaParticipationExceptions = spaParticipationExceptions;
    }




}


